#ifndef __IDISPOSABLE_H
#define __IDISPOSABLE_H
class idisposable
{
	public:
	idisposable();
	virtual ~idisposable(); // An virtual destructor is how C++ knows how to delete this object.
	int usage;
	static void dereference(idisposable **object_ptr); // Decrements usage. Calls dispose if usage == 0. Sets *object to nullptr.
};
#endif